Skip to content

Checks for rules about Responsible Project - #27

Merged
EttoreM merged 13 commits into
developfrom
97-responsible-project-mk2
Oct 29, 2025
Merged

Checks for rules about Responsible Project#27
EttoreM merged 13 commits into
developfrom
97-responsible-project-mk2

Conversation

@douglowe

Copy link
Copy Markdown

This is a replacement to PR #15 - with the relevant changes re-sat on top of the develop branch commits.

Rules implemented

Note

In what follows:

  • Responsible Project = entity (of type schema:Project) referenced by schema:sourceOrganization on the ro-crate:RootDataEntity.

  • Requesting Agent = entity (of type schema:Person) referenced by schema:agent of a schema:CreateAction.

Note that there may be multiple Responsible Projects and multiple Requesting Agents in a ro-crate.

Rules description

# Description sh:severity
1 ro-crate:RootDataEntity MUST have the schema:sourceOrganization property sh:Violation
2 ro-crate:RootDataEntityschema:sourceOrganization MUST point to entity/entities of type schema:Project sh:Violation
3 A Requesting Agent SHOULD have a schema:memberOf property sh:Warning
4 Requesting Agent → schema:memberOf MUST point to entity/entities of type schema:Project sh:Violation
5 For each Requesting Agent that has a schema:memberOf property, at least one of the Projects referenced by that property MUST also be referenced by RootDataEntity → schema:sourceOrganization sh:Violation
6 Responsible Projects MAY have the property schema:funding sh:Info
7 Responsible Project → schema:funding MUST reference entities of type schema:Grant sh:Violation
8 Responsible Projects MAY have the property shema:member sh:Info
9 Responsible Project → schema:member MUST reference entities of type schema:Organization sh:Violation
10 At least one entity referenced by Responsible Project → schema:member SHOULD be among the entities referenced by each Requesting Agent → schema:affiliation if such properties exist. sh:Warning

Rules Not implemented

The following rules have not be implemented, and they may required manual validation. The rules description need rewording to improve clarity, and single entries may need to be split in different rules.

# Description sh:severity
1 The schema:name of a Responsible Project SHOULD be descriptive, including the TRE-specific context (e.g. “TRE72 project 81”) sh:Warning
2 TRE-specific IDs SHOULD be included under Responsible Project → schema:identifier. This MAY be an array sh:Warning
3 If an identifier in Responsible Project → schema:identifier is not globally unique, include as a PropertyValue entity with a repository-specific name and value sh:Info
4 Responsible Project → schema:identifier MAY include multiple PropertyValue identifiers for different TREs " sh:Info

Comment thread rocrate_validator/profiles/five-safes-crate/must/1_funder.ttl

@elichad elichad left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comment thread rocrate_validator/profiles/five-safes-crate/should/1_responsible_project.ttl Outdated
@EttoreM
EttoreM requested a review from elichad October 29, 2025 13:20
Comment thread rocrate_validator/profiles/five-safes-crate/must/1_responsible_project.ttl Outdated
@EttoreM
EttoreM requested a review from elichad October 29, 2025 19:15
@EttoreM
EttoreM merged commit e95fb99 into develop Oct 29, 2025
4 checks passed
@douglowe douglowe linked an issue Nov 4, 2025 that may be closed by this pull request
@douglowe
douglowe deleted the 97-responsible-project-mk2 branch April 30, 2026 14:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Responsible Project

3 participants